import request from '@/config/request'

/**
 * 分页查询分类列表
 * @param {Object} params - 查询参数
 * @param {number} params.current - 当前页码
 * @param {number} params.size - 每页记录数
 * @param {string} params.title - 分类名称(可选)
 * @returns {Promise} 返回分类分页数据
 */
export const getCategoryPage = (params) => {
  return request.get('/api/category/page', params)
}

/**
 * 获取分类详情
 * @param {number} id - 分类ID
 * @returns {Promise} 返回分类详情
 */
export const getCategoryById = (id) => {
  return request.get(`/api/category/${id}`)
}

/**
 * 根据分类名称查询分类
 * @param {string} title - 分类名称
 * @returns {Promise} 返回分类列表
 */
export const searchCategories = (title) => {
  return request.get('/api/category/search', { title })
}

/**
 * 获取分类关联的水果列表
 * @param {number} id - 分类ID
 * @returns {Promise} 返回分类及其关联的水果列表
 */
export const getCategoryFruits = (id) => {
  return request.get(`/api/category/${id}/fruits`)
}

/**
 * 新增分类
 * @param {Object} data - 分类信息
 * @returns {Promise} 返回操作结果
 */
export const addCategory = (data) => {
  return request.post('/api/category/add', data)
}

/**
 * 修改分类
 * @param {Object} data - 分类信息
 * @returns {Promise} 返回操作结果
 */
export const updateCategory = (data) => {
  return request.put('/api/category/update', data)
}

/**
 * 删除分类
 * @param {number} id - 分类ID
 * @returns {Promise} 返回操作结果
 */
export const deleteCategory = (id) => {
  return request.delete(`/api/category/delete/${id}`)
}
